home *** CD-ROM | disk | FTP | other *** search
/ Champak 50 / Volume 50 - JOGO DISK .iso / Games / moonstonemadness.swf / scripts / __Packages / LevelManager.as < prev    next >
Text File  |  2007-09-27  |  6KB  |  149 lines

  1. class LevelManager extends Library.DispatcherBase
  2. {
  3.    static var DEPTH_MAIN_SS = 5;
  4.    static var LAYER_ID_BG1 = "Background1";
  5.    static var LAYER_ID_BG2 = "Background2";
  6.    static var LAYER_ID_RUNLEVEL = "RunLevel";
  7.    static var LAYER_ID_FRONT = "Front";
  8.    static var BASE_FLOOR = 345;
  9.    static var TAK_GROUND_START_X = -50;
  10.    static var TAK_GROUND_START_Y = 300;
  11.    function LevelManager(__mcRef, __oLevel)
  12.    {
  13.       super();
  14.       this.mcRef = __mcRef;
  15.       LevelManager.oCtrl = this;
  16.       this.oCurrentLevel = __oLevel;
  17.       Main.__get__Instance().doAddListener(this);
  18.       this.doBuildLevel();
  19.    }
  20.    static function get Instance()
  21.    {
  22.       return LevelManager.oCtrl;
  23.    }
  24.    function onTakReachEnd()
  25.    {
  26.       Game.__get__Instance().onTakReachEnd();
  27.    }
  28.    function doAddMSObstacle(__mcObject, _nPercent)
  29.    {
  30.       var _loc2_ = this.oMainSideScroller.getLayerFor(__mcObject);
  31.       var _loc3_ = new MoonStoneObstacle(__mcObject,_loc2_,_nPercent);
  32.    }
  33.    function doAddBird(__mcObject)
  34.    {
  35.       var _loc2_ = this.oMainSideScroller.getLayerFor(__mcObject);
  36.       var _loc3_ = new Bird(__mcObject,_loc2_);
  37.    }
  38.    function doAddFrontExplodableObstacle(__mcObject, __sLinkage)
  39.    {
  40.       var _loc3_ = this.oMainSideScroller.getLayerFor(__mcObject);
  41.       var _loc5_ = Library.Utils.MoreMath.getBoundsCenter(__mcObject.getBounds(_loc3_.__get__Ref()));
  42.       __mcObject.swapDepths(_loc3_.getRemoveDepth(__mcObject));
  43.       __mcObject.removeMovieClip();
  44.       var _loc2_ = _loc3_.doAttachVisual(__sLinkage);
  45.       this.doPutInFront(_loc2_);
  46.       _loc2_._x = _loc5_.x;
  47.       _loc2_._y = _loc5_.y;
  48.       var _loc6_ = new ExplodableObstacle(_loc2_,_loc3_);
  49.    }
  50.    function doAddExplodableObstacle(__mcObject)
  51.    {
  52.       var _loc2_ = this.oMainSideScroller.getLayerFor(__mcObject);
  53.       var _loc3_ = new ExplodableObstacle(__mcObject,_loc2_);
  54.    }
  55.    function doAddEndTrigger(__mcObject)
  56.    {
  57.       var _loc2_ = this.oMainSideScroller.getLayerFor(__mcObject);
  58.       var _loc3_ = new EndTrigger(__mcObject,_loc2_);
  59.    }
  60.    function doAddMoonStone(__mcObject)
  61.    {
  62.       var _loc2_ = this.oMainSideScroller.getLayerFor(__mcObject);
  63.       var _loc3_ = new MoonStone(__mcObject,_loc2_);
  64.    }
  65.    function doAddMiniStone(__mcObject)
  66.    {
  67.       var _loc2_ = this.oMainSideScroller.getLayerFor(__mcObject);
  68.       var _loc3_ = new MiniStone(__mcObject,_loc2_);
  69.    }
  70.    function doAddFeather(__mcObject)
  71.    {
  72.       var _loc2_ = this.oMainSideScroller.getLayerFor(__mcObject);
  73.       var _loc3_ = new Feather(__mcObject,_loc2_);
  74.    }
  75.    function doAddPepper(__mcObject)
  76.    {
  77.       var _loc2_ = this.oMainSideScroller.getLayerFor(__mcObject);
  78.       var _loc3_ = new Pepper(__mcObject,_loc2_);
  79.    }
  80.    function doPutInFront(__mc)
  81.    {
  82.       var _loc2_ = this.oMainSideScroller.getLayerFor(__mc);
  83.       _loc2_.doPutInFront(__mc);
  84.    }
  85.    function doResumeFromMiniGame()
  86.    {
  87.       this.doResume();
  88.       this.oTakGround.onBackFromMiniGame();
  89.    }
  90.    function doDestroy()
  91.    {
  92.       this.oMainSideScroller.doDestroy();
  93.       this.oTakGround.doDestroy();
  94.       delete this.oTakGround;
  95.       delete this.oCurrentLevel;
  96.       delete LevelManager.oCtrl;
  97.       delete this.oMainSideScroller;
  98.    }
  99.    function doBuildLevel()
  100.    {
  101.       this.oMainSideScroller = new SideScroller.SideScrollerManager(this.mcRef,Game.STAGE_WIDTH,Game.STAGE_HEIGHT,this);
  102.       this.oMainSideScroller.setScrollMethod(SideScroller.SideScrollerManager.SCROLL_ONE_WAY);
  103.       this.oMainSideScroller.setScrollSpeed(0.15);
  104.       if(this.oCurrentLevel.__get__LevelNumber() == 3 && this.oCurrentLevel.__get__LevelType() != BaseLevelData.LEVEL_TYPE_USER)
  105.       {
  106.          var _loc7_ = this.oMainSideScroller.doAddLayer("FixedYellow",SideScroller.Layer.TYPE_STATIC,SideScroller.Layer.METHOD_RANDOM);
  107.          _loc7_.doAddPanelLinkage("Amb3_mcBgFixed");
  108.       }
  109.       var _loc4_ = this.oMainSideScroller.doAddLayer(LevelManager.LAYER_ID_BG1,SideScroller.Layer.TYPE_MOVING,SideScroller.Layer.METHOD_RANDOM);
  110.       _loc4_.doAddPanelLinkage(this.oCurrentLevel.sPanelBg1);
  111.       _loc4_.__set__ParalaxRatioX(0.2);
  112.       _loc4_.__set__ParalaxRatioY(0.1);
  113.       _loc4_.setOverlap(1.5);
  114.       var _loc3_ = this.oMainSideScroller.doAddLayer(LevelManager.LAYER_ID_BG2,SideScroller.Layer.TYPE_MOVING,SideScroller.Layer.METHOD_RANDOM);
  115.       _loc3_.doAddPanelLinkageSet(Library.Utils.Tools.doCopyArray(this.oCurrentLevel.aPanelBg2));
  116.       _loc3_.__set__ParalaxRatioX(0.5);
  117.       if(this.oCurrentLevel.__get__LevelNumber() == 1 || this.oCurrentLevel.__get__LevelNumber() == 3 || this.oCurrentLevel.__get__LevelType() != BaseLevelData.LEVEL_TYPE_USER)
  118.       {
  119.          _loc3_.__set__ParalaxRatioY(0.3);
  120.       }
  121.       _loc3_.setOverlap(1.5);
  122.       var _loc2_ = this.oMainSideScroller.doAddLayer(LevelManager.LAYER_ID_RUNLEVEL,SideScroller.Layer.TYPE_MOVING,SideScroller.Layer.METHOD_ORDERED);
  123.       _loc2_.__set__BaseFloor(this.oCurrentLevel.nFloorHeight);
  124.       _loc2_.setOverlap(1.5);
  125.       if(this.oCurrentLevel.sPanelStart != undefined)
  126.       {
  127.          _loc2_.doAddPanelLinkage(this.oCurrentLevel.sPanelStart);
  128.       }
  129.       _loc2_.doAddPanelLinkageSet(this.oCurrentLevel.__get__Panels());
  130.       if(this.oCurrentLevel.sPanelEnd != undefined)
  131.       {
  132.          _loc2_.doAddPanelLinkage(this.oCurrentLevel.sPanelEnd);
  133.       }
  134.       this.oMainSideScroller.setDefaultLayer(LevelManager.LAYER_ID_RUNLEVEL);
  135.       var _loc6_ = _loc2_.doAttachVisual("Dynamic_TakGround");
  136.       _loc6_._x = LevelManager.TAK_GROUND_START_X;
  137.       _loc6_._y = LevelManager.TAK_GROUND_START_Y;
  138.       this.oTakGround = new TakGround(_loc6_,_loc2_);
  139.       this.oMainSideScroller.__get__CameraManager().doLockOn(this.oTakGround);
  140.       if(this.oCurrentLevel.__get__LevelNumber() == 3 && this.oCurrentLevel.__get__LevelType() != BaseLevelData.LEVEL_TYPE_USER)
  141.       {
  142.          var _loc5_ = this.oMainSideScroller.doAddLayer(LevelManager.LAYER_ID_FRONT,SideScroller.Layer.TYPE_MOVING,SideScroller.Layer.METHOD_RANDOM);
  143.          _loc5_.doAddPanelLinkage("Amb3_Panel_Front");
  144.          _loc5_.__set__ParalaxRatioX(1);
  145.          _loc5_.__set__ParalaxRatioY(1);
  146.       }
  147.    }
  148. }
  149.